package com.myBlast.client.services;

import java.util.List;
import com.google.gwt.user.client.rpc.AsyncCallback;
import com.myBlast.data.BlastResult;

/**
 * This is the asynchronous interface for the myBlast web app
 * @author Parit Bansal
 */
public interface MyBlastServiceInterfaceAsync {
	
	/* (non-Javadoc)
	 * @see com.myBlast.client.services.MyBlastServiceInterface#getResults(java.lang.String)
	 */
	public void getResults(String str,AsyncCallback<List<BlastResult>> callback);
	
	/* (non-Javadoc)
	 * @see com.myBlast.client.services.MyBlastServiceInterface#getData(java.lang.String)
	 */
	public void getData(String str, AsyncCallback<String> callback);
	
	/* (non-Javadoc)
	 * @see com.myBlast.client.services.MyBlastServiceInterface#getCSV(java.lang.String)
	 */
//	public void getCSV(List<BlastResult> rslts,AsyncCallback<String> callback);
	
	/* (non-Javadoc)
	 * @see com.myBlast.client.services.MyBlastServiceInterface#getCSV(java.lang.String)
	 */
	public void getFile(List<BlastResult> rslts,AsyncCallback<String> callback);
	
	/* (non-Javadoc)
	 * @see com.myBlast.client.services.MyBlastServiceInterface#saveProject(java.lang.String)
	 */
	public void saveProject(List<BlastResult> rslts, AsyncCallback<String> callback);
	
	public void stopRunning(String projectFolder, AsyncCallback<Boolean> callback);
} // MyBlastServiceInterfaceAsync
